18 research outputs found
Safe and Verifiable Design of Concurrent Java Programs
The design of concurrent programs has a reputation for being difficult, and thus potentially dangerous in safetycritical real-time and embedded systems. The recent appearance of Java, whilst cleaning up many insecure aspects of OO programming endemic in C++, suffers from a deceptively simple threads model that is an insecure variant of ideas that are over 25 years old [1]. Consequently, we cannot directly exploit a range of new CASE tools -- based upon modern developments in parallel computing theory -- that can verify and check the design of concurrent systems for a variety of dangers\ud
such as deadlock and livelock that otherwise plague us during testing and maintenance and, more seriously, cause catastrophic failure in service. \ud
Our approach uses recently developed Java class\ud
libraries based on Hoare's Communicating Sequential Processes (CSP); the use of CSP greatly simplifies the design of concurrent systems and, in many cases, a parallel approach often significantly simplifies systems originally approached sequentially. New CSP CASE tools permit designs to be verified against formal specifications\ud
and checked for deadlock and livelock. Below we introduce CSP and its implementation in Java and develop a small concurrent application. The formal CSP description of the application is provided, as well as that of an equivalent sequential version. FDR is used to verify the correctness of both implementations, their\ud
equivalence, and their freedom from deadlock and livelock
Magnetic Reversal on Vicinal Surfaces
We present a theoretical study of in-plane magnetization reversal for vicinal
ultrathin films using a one-dimensional micromagnetic model with
nearest-neighbor exchange, four-fold anisotropy at all sites, and two-fold
anisotropy at step edges. A detailed "phase diagram" is presented that catalogs
the possible shapes of hysteresis loops and reversal mechanisms as a function
of step anisotropy strength and vicinal terrace length. The steps generically
nucleate magnetization reversal and pin the motion of domain walls. No sharp
transition separates the cases of reversal by coherent rotation and reversal by
depinning of a ninety degree domain wall from the steps. Comparison to
experiment is made when appropriate.Comment: 12 pages, 8 figure
A pluralistic framework for counselling and psychotherapy: Implications for research.
Historically, training, research and practice in counselling and psychotherapy have been dominated by unitary theoretical models. Although integrative and eclectic positions have been developed as alternatives, these have not been successful in generating research and have resulted in a further proliferation of competing models. In this paper we introduce a 'pluralistic' framework for counselling and psychotherapy and discuss the implications of this framework for research. The basic principle of this pluralistic framework is that psychological difficulties may have multiple causes and that there is unlikely to be one, 'right' therapeutic method that will be appropriate in all situations - different people are helped by different processes at different times. This pluralistic framework operates as a meta-theory within which it is possible to utilise concepts, strategies and specific interventions from a range of therapeutic orientations. The framework is structured around three domains - goals, task and methods - by which therapeutic processes can be conceptualised, critically examined and empirically investigated. These domains, and the relationships between them, are outlined and the collaborative relationship at the heart of the pluralistic framework is discussed. The pluralistic framework provides a means for empirical research directly to inform practice and potential lines of empirical inquiry are outlined, along with findings from a recent study of counselling in schools